Фінальний проект з курсу Методи і засоби візуалізації даних

Тема: Візуальне дослідження земельного ринку Івано-Франківської області

Основне джерело даних: “Довідник показників нормативної грошової оцінки земель населених пунктів”

Цей набір даних містить інформацію про кожен населений пункт України: від великого міста до найменшого села. У ньому представлена наступна інформація: назва населеного пункту, приналежність до району і області, дата проведення нормативної оцінки, чисельність населення, площа населеного пункту, кошторис на вартість технічної документації, середня ціна землі за квадратний метр, цікаві регіональні коефіцієнти, які описують наприклад приналежність міста до курортної зони, коефіцієнт містобудівної цінності.

У даному проекті були використані дані, які стосуються лише населених пунктів Івано-Франківської області. Отримані візуалізації допомагають дати відповіді на деякі запитання, можуть принести локальну користь для держслужбовців чи інвесторів.

Блок коду для підготовки необхідних даних

Імпорт утилітних функцій

Вичитуємо основний датасет

Парсимо геодані, отримуємо проміжний DataFrame

Для парсингу географічних даних, а саме полігонів районів і міст, я використав сервіс OpenStreetMap, який надає зручні візуальні утиліти, а також API для доступу до географічних даних. Спочатку я формую запит для отриманні спеціального ID кожного населеного пункту, а пізніше з його допомогою викачую необхідні полігони і зберігаю в потрібному форматі.

Розбиваємо інформацію окремо на райони і міста

Готуємо базову карту, від якої будемо відштовхуватись у подальших візуалізаціях

Створення власної теми для досягнення уніфікованого форату для всіх графіків і уникнення повторів коду

Розбиваємо ціни по категоріях

Візуалізація 1. Розподіл середньої ціни землі за районами

Основний код візуалізації

Візуалізація

Опис.

Головним завданням цієї візуалізації було зобразити середні значення ціни землі за квадратний метр в районах Івано-Франківської області. Графік повинен допомогти побачити саме розподіл цін по районах для зручного порівняння наприклад між Галицьким і Тисменицьким районами. Для вирішення даного завдання я розглядав різні варіанти візуалізації, один з них буде зображений на наступній візуалізації. Цей графік допомагає показати також залежність цін від географічного положення району, наприклад чи земля в сусіддніх районах коштує приблизно однаково, чи дорожчі райони на півдні. Така візуалізація була обрана завдяки своїй зручності у навігації. Ми швидко можемо знайти потрібний район і одразу побачити вартість землі за квадратний метр, кольорова гама дозволяє оцінити розподіл цінової різниці між районами і швидко сконцентрувати увагу на найдорожчий (Тисменицкий) чи найдешевший (Тлумацький) райони, які до того ж є сусідами. Неперервна шкала легенди була обрана, щоб не забирати на себе багато уваги, а лише загалом дати уявлення про відповідність числових і кольорових характеристик. Акцентуватись на ній не потрібно, бо для кожного регіону ітак представлені конкретні значення ціни. Варто звернути увагу, що кольори підписів представлені двома варіантами, щоб отримти кращий контраст між кольором регіону і кольором підпису назви, в протилежному випадку наприклад білий і зеленувато-жовтий колір практично зливаються. Емблема Івано-Франківської області не несе інформації, яка відповідала б на якесь запитання, але в той же ж час додає візуалізації офіційності і елегантності, не заважаючи. Іншим варіантом графіка, було представлення інформації через тултіпи, що дає інтерактивності, але з іншого боку такий варіант, не дозволив би використати графік у друкованих джерелах, що є недоліком. І без тултіпа вся інформація донесена в повному об'ємі. Недоліком візуалізації є певні сірі регіони, для бекграунду я використав карту області, щоб не втратити жодну частину, але певні частини регіонів відсутні, бо вдалось отримати лише такі полігони. В майбутньому, приділивши більше часу, можна буде вручну підправити полігони для заповнення всієї карти області. Іншим незначним недоліком є виступи тексту назв за межі району, я пробував змінювати розміри і зсувати їх, але одного рішення, яке б закрило всі перетини, не знайшов.

Візуалізація 2. Розподіл середньої ціни землі за районами

Основний код візуалізації

Візуалізація

Опис.

На перший погляд цей графік відповідає на те саме запитання, що і попередній лише іншим способом, але розібравшись детальніше, можна зрозуміти різницю. Якщо попередня візуалізація базувалась на географічних характеристиках (ми фактично могли бачити розташування регіону на карті) і допомагало перевірити географічні залежності, то дана візуалізація уникає географічних абстракцій і призначена для зручнішого числового порівняння. Наприклад нам потрібно визначити умовно топ три найдорожчих райони, що дуже легко зробити по отриманому зображенню завдяки сортуванню по ціні. Крім того у нас виникає питання, який райони дуже схожі по ціні, на попередній візуалізації це було можливо зробити, але не дуже швидко і зручно, бо Снятинський і Рогатинський райони знаходяться далеко один від одного і кольорова характеристика не дуже рятує, а от в даній візуалізації, завдяки сортуванню, ми миттєво бачимо, які райони найближчі по ціні. І тут різниця в декілька копійок за метр не є важливою, коли наше завдання це порівняння рівнів цін. Ми з легкістю можемо сказати, що ціна в Богородчанському і Долинському районах практично ідентична. Недоліками цьієї візуалізації є переваги попередньої, тут у нас відсутня гографічна складова і сортування за алфавітом, тому знайти потрібний район займе зайву секунду.

Візуалізація 3. Розподіл кількості міст по цінових категоріях

Основний код візуалізації

Візуалізація

Опис.

Найцікавіший графік мого проекту. Головною задачею було донесення інформації про розподіл кількості міст кожної цінової категорії в різних районах. Середня ціна це цікава інформація, але нам потрібні деталі. Моєю підозрою було те, що в Тисменицькому районі середня ціна найбільша, бо в ньому знаходиться обласний центр, ціна якого дуже велика, а всі інші мітса мають дешеву ціну, але середнє значення виходить велике, я помилявся і в цьому мені допомогла переконатись дана візуалізація. По ній ми можемо зрозуміти, що наприклад в Тисменицькому районі є 4 міста, які належать до категорії з високою ціною, а переважна більшість, тобто 44 міста мають стандартну середню ціну за квадратний метр. Дане цінове групування є умовним (я шукав варіанти в Інтернеті, всі відрізняються, тому згрупував на свій розсуд), поділяємо 5 категорій (висока, помірна, стандартна, мала, крихітна ціни). Спершу розглядав варіант представити всі райони на одній картинці, але так максимально незручно навігуватись по них і неможливо побачити все одночасно, тому я прийняв рішення розділити представлення на дві візуалізації: в першій топ 5 найдорожчих районів (ними можуть частіше цікавитись), всі інші райони в двохколонній візуалізації. Райони відсортовані по середній ціні так само як і категорії, кожній з яких відповідає певний смайлик, що привертає і кконцентрує увагу на важливій інформації. Ми можемо прилизно прикинути розподіл міст за допомогою смайликів або ж побачити конкретну кількість за допомогою позначок на осі X. Недоліками візуалізаціє є розбиття на дві частини, на жаль, іншого варіанту не знайшов, різна кількість районів (4 і 5) на колонках другої візуалізації.

Візуалізація 3.1 (Топ 5 районів)

Візуалізація 3.2 (Решта районів)

Візуалізація 4. Розподіл цін на землю по містах області

Основний код візуалізації

Візуалізація

Опис.

У перших двох візуалізаціях ми розглядали суто райони, а в попередніх ми вже почали вивчати інформацію по містах. В цій візуалізації ми в першу чергу хочемо дослідити розподіл цін по містах області. Для цього знову використаємо географічне представлення даних і бульбашки, що представляють міста. У цьому графіку я вж не зміг обійтись без інтерактивності, а саме без використання тултіпів. Отож, при наведенні курсора на бульбашку, що репрезентує певне місто, ми отримуємо інформацію про назву міста, ціну за землю, підпорядкування землі до району чи міста обласного значення та про рік проведення останньої оцінки. Щоб представлення не було занадто засміченим, я візуалізую лише міста та селища міського типу, уникаючи всі села. Розмір бульбашки (міста) залежить від ціни землі за нього. Дана візуалізація допомагає побачити, що ціна за землю в Калуші набагато більша за ціну в Івано-Франківську, що дивно, проте за допомогою тих же ж тултіпів, ми бачимо, що оцінка в обласному центрі проводилась аж в 2014 році (в наступній візуалізації ми побачимо, що така інформація вже не актуальна), а в Калішу оцінка була в 2021, це і пояснює таку дороговизну. Крім такого представлення я експериментував з накладанням текстових позначок міст і значень, схожим способом, як і в першій візуалізації, але тут її потрібно більше, а це нагромаджує дані, тому найкращим способом я все ж обрав інтерактивність, для отримання деталей про те місто, яке цікавить. В майбітньому до випадаючого вікна можна також дадати герби міст. Недоліками даного представлення даних є неможливість повного сприйняття, якщо ми наприклад захочимо надрукувати його на папері, не можемо знайти місто по назві, а лие по локація або ж переглядати всі підряд, деякі міста дуже малі, трішки незручно наводити курсор на них, важко порівняти два конкретні міста. Проте, незважаючи на вказані недоліки, візуалізація добре справляється з поставленим завданням.

Візуалізація 5. Розподіл кількості неселених пунктів за роками проведення оцінки

Основний код візуалізації

Візуалізація

Опис.

Як ми побачили на прикладі різниці цін і років оцінки Калуша і Івано-Франківська, інформація про останній рік проведення оцінки є важливою. Ця візуалізація покликана допомогти зрозуміти розподіл кількості міст по роках, зрозуміти чи можемо ми довіряти останнім офіційним оцінкам, чи є інформація актуальною. Графік представлений у вигляді гістограми по роках, візуально інформація розділена двома прийомами: кольором і лініями, щоб розділити оцінку по актуальності. Лінія представляє базове розмежування, а от колір ще й відображає градацію актуальності (червоний-стара, зелена-актуальна). Графік дає нам відповідь на питання, чи ми можемо довіряти такій інформації (В основному, на жаль, ні). Більшість проведених оцінок міст належать до категорії Сумнівна актуальність, якщо ще такі дані ми більш-менш можемо враховувати, то ціни старіші за 2011 рік є зовсім не актуальними і таких населених пунктів є також вагома кількість. Нещодавно (2017-2021 роки) оцінка проводилась в невеликій кількості населених пунктів, інформації про них ми можемо повністю довіряти, але таких міст - одиниці. У першій версії актуальність позначалась легендою, що було не зовсім зрозуміло, в фінальній версії, додаткова підказка знаходиться під заголовком, а сама легенда (пояснення) інкорпорована в графік. Багато недоліків було виправлено після фідбеку, тому зараз для мене помітний один - лінії розмежування візуально займають один рік по осі X, що може трішки заплутати, але цей недолік незначний.

Візуалізація 6. Залежність ціни землі від площі населеного пункту

Основний код візуалізації

Візуалізація

Опис.

Завершальна візуалізація проекту, на основі, якої можна зробити ще низку схожих представлень. Тут ми намагаємось дослідити залежність ціни в населеному пункті від його площі.Населені пункти представлені кружечками у відповідному місті графіка, а червона лінія це рухоме середнє значення, яке узагальнює інформацію і конуентрує на собі увагу, щоб ми не розпорошувались і не відволікались на окремі кружечки (міста). За допомогою візуалізації рухомого середнього значення, ми розуміємо, що впринципі сама площа не впливає на ціну, що є цікавим спостереженням. На графіку невеликою тінню (сіріший колір) з текстовою підказкою позначена зона великих за площею міст, яких не так вже й багато. В інших способах, які я розглядав, я намагався змінити розмірність (scale) по осі X, щоб не скупчувати багато малих міст разом, але так графік виходить дуже розтягненим, а кожне окреме місто нас не цікавить, тому я пожертував цим на вигоду загальній картинці. Також я пробував візуалізувати не рухоме середнє значення, а різні поліноми, але вирішим, що фінальна версія найбільш репрезентативна. Недоліком такого представлення є скупчення багатьох малих міст і аналогічно дуже вузькі коливання рухомого середнього біля скупчення міст, але я свідомо цим пожертвував для отримання не широкого, зрозумілого загалом графіка. Ця візуалізація не потребує інтерактивності, тому можна як і більшість попередніх зарендерити без кнопочки і у форматі .png.